package com.enhe.gck.communal;

import com.enhe.gck.controller.vo.InstallationLaneVO;
import com.enhe.gck.controller.vo.LaneVO;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * 前置机调用参数
 */
@Data
public class ClientInvokingParam {
    /**
     * 门禁编号
     */
    private String guardCode;

    /**
     * 车牌号
     */
    private String carNumber;

    /**
     * 二维码信息
     */
    private String qrCodeInfo;

    /**
     * 通道号
     */
    private String channelCode;

    /**
     * 执行命令
     * 进厂\出厂\上磅\装车
     * 参考 : com.enhe.front.constant.ClientCommand
     */
    private String command;

    /**
     * icid
     */
    private String icId;

    /**
     * 皮重
     */
    private BigDecimal tare;

    /**
     * 重量
     */
    private BigDecimal weight;

    /**
     * 净重
     */
    private BigDecimal net;

    /**
     * 磅号
     */
    private String weightCode;

    /**
     * 磅名
     */
    private String weightName;

    /**
     * 已装数量(袋装:包数; 散装:千克)
     */
    private BigDecimal loadedNum;
    /**
     * 修改装车量时本次读取数量相对于上一次读取的增量（用于编织袋“使用”记录）
     */
    private Integer increase;
    /**
     * 是否装车完成
     */
    private Boolean isLoadComplete;

    /**
     * 上次装货量校验订单ic卡列表
     */
    private List<String> icCardList;

    /**
     * 装车道参数
     */
    private InstallationLaneVO installationLaneVO;
    /**
     * 称重发送车道信息
     */
    private LaneVO laneVO;

    public ClientInvokingParam() {
    }

    public ClientInvokingParam(String guardCode, String carNumber, String qrCodeInfo, String channelCode, String command, String icId, BigDecimal tare, BigDecimal net, String weightCode, String weightName, BigDecimal weight) {
        this.guardCode = guardCode;
        this.carNumber = carNumber;
        this.qrCodeInfo = qrCodeInfo;
        this.channelCode = channelCode;
        this.command = command;
        this.icId = icId;
        this.tare = tare;
        this.net = net;
        this.weightCode = weightCode;
        this.weightName = weightName;
        this.weight = weight;
    }
}